約 1,941,983 件
https://w.atwiki.jp/machikado_klaxon/pages/32.html
「トモダチコレクション」で奥様達が作った浩市コレクション。 印象的な「V」 やべっち? 劇団ひとり? 色んなものがダダ漏れ 「誰とも関係をもっていません」 近づいてきた こ、浩市…? 服屋でバイト 食べ物売ってる店でバイト 新たな浩市 いい感じに浩市ってます 質屋でバイト
https://w.atwiki.jp/tm-mura/pages/62.html
コレクション Collectionのサブクラスを紹介。(Array、OrderedCollection、List、Set、Bagなど) Stringとそのサブクラス(SymbolやByteString)、Dictionaryは別管理しているのでそちらを参照。 Collectionには順番が保障されているタイプ(以下、配列型と表記)とされていないタイプ(以下、集合型と表記)がある。 SequenceableCollectionのサブクラスか否かで決まる。 Collectionのサブクラスのメジャーなクラスの特徴 Array: 配列型。リテラルで定義することができる。項目の追加・削除を禁止している。 OrderedCollection: 配列型。項目追加・削除ができ、いはゆる配列というイメージに最も近い振る舞いをする。 List: 配列型。項目追加・削除ができる。いまいちOrderedCollectionとの使い分けのポイントがわからないが、位置を指定した追加や削除に向いているはず。 SortedCollection 配列型。ソートされた状態が保障されている配列。ソートブロックを内包している。 Set 集合型。重複のない集合。 Bag 集合型。重複を許し、さらに重複項目の重複数まで保持している。 SelectionInList 画面を表示するときのリストボックスに使われる。Listと選択中インデックスを保持している。 SelectionInListSortAware 画面を表示するときのデータセットに使われる。List、選択中インデックス、ソート項目とその方向を保持している。 7.0~のマイナーバージョンアップの間に増えたメソッドも結構あるみたいだ。 作る 空のコレクションを作る 特定の値でコレクションを作る 任意の値のコレクションを作る コレクション(配列型)を結合する 調べる コレクションの要素数を調べる コレクションが空か調べる コレクションが空でないか調べる コレクションが空でないか調べる2 コレクション(配列型)があるコレクション(配列型)で始まるか調べる コレクション(配列型)があるコレクション(配列型)で終わるか調べる コレクションにある要素が含まれているか調べる コレクションにある条件に合致する要素が含まれているか調べる コレクションの全ての要素が条件に合致するか調べる コレクションの要素のどれか一つ以上が条件に合致するか調べる 探す コレクション(配列型)のある要素の位置を先頭から探す コレクション(配列型)のある要素の位置を最後から探す コレクション(配列型)の要素がある条件にマッチする最初の位置を返す コレクション(配列型)の要素がある条件にマッチする最後の位置を返す 比較対象のコレクション(配列型)と合致する最初の位置を探す ある条件に合致する要素を取得する 修正する コレクション(配列型)の指定した要素を置換する コレクション(配列型)の指定した範囲を置換する コレクション(配列型)の一部を置換する コレクションの各要素を与えた条件に修正する 取り出す コレクション(配列型)の1文字目を取得する コレクション(配列型)の最後の文字を取得する コレクション(配列型)の指定した位置の文字を取得する コレクション(配列型)の先頭から指定した要素数分を取得する コレクション(配列型)の最後の指定した要素数分を取得する コレクション(List、OrderedCollection)の指定した要素の次を取得する コレクション(List、OrderedCollection)の指定した要素の前を取得する 指定した要素数を先頭から取り除いたコレクション(配列型)を返す 指定した要素数を最後から取り除いたコレクション(配列型)を返す 任意の位置から任意の位置までコレクション(配列型)を切り出す 指定したオブジェクトの手前までを切り出す 指定したオブジェクトを取り除いたコレクションを返す ある条件に合致する要素だけを残したコレクションを返す 除く コレクションの指定した要素を取り除く コレクション(配列型)の最初の要素を取り除く コレクション(配列型)の最後の要素を取り除く コレクション(配列型)の指定した位置の要素を取り除く コレクションの要素を全て取り除く コレクションから指定したコレクションの要素と一致する要素を全て取り除く コレクション(配列型)の指定した範囲の要素を取り除く コレクションから条件に合致する要素を全て取り除く 条件に合致する要素を全て取り除いたコレクションを返す 追加する コレクション(List、OrderedCollection)の最後に要素を1つ追加する コレクション(List、OrderedCollection)の最後に要素を追加する2 コレクション(List、OrderedCollection)の最初に要素を追加する コレクション(List、OrderedCollection)の最後にコレクションを追加する コレクション(List、OrderedCollection)の最後にコレクションを追加する2 コレクション(List、OrderedCollection)の最初にコレクションを追加する コレクション(List、OrderedCollection)のafter で指定した要素の後に要素を追加する コレクション(List、OrderedCollection)のafter で指定した要素の前に要素を追加する コレクション(List、OrderedCollection)の指定した位置の前に要素を追加する コレクションをコピーしつつ最後に要素を1つ追加する Bagに出現頻度付きで要素を1つ追加する ループする コレクションの各要素に対し順番に処理を行う コレクション(配列型)のインデックスに対し順番に処理を行う コレクション(配列型)の各要素・インデックスに対し同時指定で順番に処理を行う コレクションの各要素に対し順番に処理を行いつつ合間にも処理を行う 同じサイズのコレクション(配列型)同士で各要素に対し順番に処理を行う 並べ替える コレクションをソート済コレクション(SortedCollection)にする コレクションを条件指定でソート済コレクション(SortedCollection)にする コレクション(配列型)を破壊的にソートする コレクション(配列型)を条件指定で破壊的にソートする コレクション(配列型)を条件指定で破壊的にソートする コレクション(配列型)の指定した位置同士を入れ替える 結合する コレクションの各要素をつなげる コレクションの各要素を重ねあわせる(集計関数っぽいことをやる) 区切る コレクション(配列型)を指定したトークンで区切る コレクション(配列型)を条件にマッチする要素で区切る コレクション(配列型)を条件にマッチする要素で区切りつつループもする コレクション(配列型)を条件にマッチしない要素で区切る コレクション(配列型)を条件にマッチしない要素で区切りつつループもする コレクション(配列型)を要素の前後関係を判断して区切る コレクション(配列型)を要素の前後関係を判断して区切りつつループもする まとめる コレクションをユニークな(重複のない)コレクションにする コレクションに重複数のデータも持たせる コレクションをtrue側false側に二分する その他 コレクションのある要素の重複数を調べる コレクション(配列型)の順番を反対にする コレクション(配列型)各要素に対し逆から順番に処理を行う 作る 空のコレクションを作る Array new 10 まずはここから。適当なクラス new n とすればだいたいどのクラスでも作成できる。 ただし、メモリ空間を確保しただけで実際に at n でアクセスするとエラーになるクラスのほうが多い。 終端を表すインスタンス変数(lastIndexとかlimitとかtallyとか)が0のままだからだ。 そういうクラスで終端を後付で変更することなしにアクセスしたい場合は OrderedCollection withSize 10 とする。 特定の値でコレクションを作る Array new 10 withAll 0 ArrayかStringで理解できる。他のクラスで作りたい場合は(Array new n withAll x) asXxxxとする。 (Array new 5) atAllPut 0 としてもよい。 任意の値のコレクションを作る Array(リテラル)の場合 #($a $b 1 2 3 Hello #World) いくつでも設定できる。 Array(withメソッド)の場合 Array with Date today with Time now withは4つまで。そこまでしかメソッドが用意されていない。 もっと作りたい場合は(Array with with with with ),(Array with )のようにカンマでつなぐ。 OrderedCollectionの場合 (foo = OrderedCollection new) add 1; add 2; add 3; yourself これ1行でfooの中に3つの項目が入る。 Listの場合 (foo = List new) at 1 put $a; at 2 put $b; at 3 put $c; yourself これ1行でfooの中に3つの項目が入る。 storeOn メソッドを読むと、どのように書けばオブジェクトが作れるかわかる。 コレクション(配列型)を結合する #($a $b $c), #(1 2 3) 調べる コレクションの要素数を調べる #($a $b $c) size 要素数を調べる。コレクションが空か調べるために aCollection size = 0 ifTrue [...]とかやるのを見かけるが、 そういう場合は下記のisEmpty等が用意されているのでそれらを使うべきだろう。 コレクションが空か調べる Array new isEmpty コレクションが空の場合trueを返す。 コレクションが空でないか調べる #($a $b $c) isNotEmpty コレクションが空でないか調べる2 #($a $b $c) notEmpty コレクションが空でない場合trueを返す。 isEmptyの逆がどっちかわからなくなってもいいように2種類用意されていると思われる。 コレクション(配列型)があるコレクション(配列型)で始まるか調べる #($a $b $c) beginsWith ab ArrayとStringで比較しているが、at メソッドを理解できるクラスなら比較可能。この場合trueになる。 コレクション(配列型)があるコレクション(配列型)で終わるか調べる #($a $b $c) endsWith bc beginsWith の逆からメソッド。 ArrayとStringで比較しているが、at メソッドを理解できるクラスなら比較可能。この場合trueになる。 コレクションにある要素が含まれているか調べる #( Zun Zun ZUN zun Doko ) includes Doko 要素が含まれていればtrueを返す。 位置まで知りたければindexOfかlastIndexOf を用いる。ブロックで条件指定したければcontains を用いる。 コレクションにある条件に合致する要素が含まれているか調べる #( Zun Zun ZUN zun Doko ) contains [ i | *zun* match i] 条件に合致する要素が含まれていればtrueを返す。 条件に合致する要素を取得したい場合はdetect を用い、位置を取得したい場合はfindFirst またはfindLastを用いる。 コレクションの全ての要素が条件に合致するか調べる #(1 3 5 7 9) allSatisfy [ i | i odd] 全ての要素が条件に合致すればtrueを返す。 コレクションの要素のどれか一つ以上が条件に合致するか調べる #(2 4 6 8 0 1) anySatisfy [ i | i odd] 要素のどれか一つでも条件に合致すればtrueを返す。 探す コレクション(配列型)のある要素の位置を先頭から探す #($a $b $c $b) indexOf $b 要素が見つからなければエラーになるので、回避策としてindexOf ifNone もあり。 ブロックで条件を指定したければfindFirst を用いる。 コレクション(配列型)のある要素の位置を最後から探す #($a $b $c $b) lastIndexOf $b indexOfの逆からメソッド。要素が見つからなければエラーになるので、回避策としてlastIndexOf ifNone もあり。 ブロックで条件を指定したければfindLast を用いる。 コレクション(配列型)の要素がある条件に合致する最初の位置を返す #($a $B $c $D) findFirst [ i | i isUppercase] どの要素も条件に合致しない場合は0を返す。 コレクション(配列型)の要素がある条件に合致する最後の位置を返す #($a $B $c $D) findLast [ i | i isUppercase] どの要素も条件に合致しない場合は0を返す。 比較対象のコレクション(配列型)と合致する最初の位置を探す #(1 2 3 4 5 6 7 8 9 0) indexOfSubCollection (3 to 6) startingAt 2 コレクション(配列型)同士の比較を行う。インターバル(3 to 6)も配列型コレクションのサブクラスなので比較可能。 文字列にも使えるが、文字列の場合はfindString startingAt が用意されている。 ある条件に合致する要素を取得する #( Zun Zun ZUN zun Doko ) detect [ i | *zun* match i] 4つの「ect」メソッドの1つ。 条件に合致する要素が含まれていない場合はエラーになるので、回避策としてdetect ifNoneもあり。 条件に合致する要素があるか真偽を問う場合はcontains を用い、位置を取得したい場合はfindFirst またはfindLastを用いる。 (XXXXX detect [YYYY] ifNone [nil]) isNil ifTrue [ZZZ] なんていうのを見かける。contains の存在に気づいて欲しい。 修正する コレクション(配列型)の指定した要素を置換する Good morning beMutable replaceAll $o with $a 破壊的メソッドで、リテラル文字列でもbeMutableすれば破壊的修正が可能。文字列で使うことがほとんどだと思う。 開始終了位置を指定できるcopyReplaceFrom to with というメソッドもある。 コレクション(配列型)の指定した範囲を置換する Good morning beMutable replaceFrom 1 to 4 with Bad 破壊的メソッドで、リテラル文字列でもbeMutableすれば破壊的修正が可能。 from to の範囲とwith の文字数が合わないとエラーになる。文字列で使うことがほとんどだと思う。 コレクション(配列型)の一部を置換する #($a $b $c $d) copyReplaceAll cd with #(1 3) 開始終了位置を指定できるcopyReplaceFrom to with というメソッドもある。配列型コレクション同士なら置換可能。 コレクションの各要素を与えた条件に修正する #(1 2 3) collect [ i | i * 2] よく#(1 2 3) do [ i | i * 2]とやってもコレクションが変わらないと嘆くのを見かけるが、 do でアクセスする要素はリードオンリーなので、これで対応する。 取り出す コレクション(配列型)の1文字目を取得する #($a $b $c) first コレクション(配列型)の最後の文字を取得する #($a $b $c) last コレクション(配列型)の指定した位置の文字を取得する #($a $b $c) at 2 コレクション(配列型)の先頭から指定した要素数分を取得する #($a $b $c) first 2 コレクション(配列型)の最後の指定した要素数分を取得する #($a $b $c) last 2 コレクション(List、OrderedCollection)の指定した要素の次を取得する #($a $b $c) asList after $b 指定した要素が見つからなければエラー、指定した要素が最後の場合もエラー。 findIndexOf を利用して+1しているだけ。 コレクション(List、OrderedCollection)の指定した要素の前を取得する #($a $b $c) asList before $b 指定した要素が見つからなければエラー、指定した要素が最初の場合もエラー。 findIndexOf を利用して-1しているだけ。 指定した要素数をコレクション(配列型)の先頭から取り除く #($a $b $c) allButFirst 1 指定した要素数をコレクション(配列型)の最後から取り除く #($a $b $c) allButLast 1 任意の位置から任意の位置までコレクション(配列型)を切り出す #($a $b $c) copyFrom 1 to 2 汎用性の高さには定評があるように思う。 指定したオブジェクトの手前までコレクション(配列型)を切り出す #($a $b $c) copyUpTo $b 長いコレクションになると信頼性は低いだろうなぁ。 指定したオブジェクトを取り除いたコレクションを返す #(1 nil 3 nil nil 6 7 nil nil 0) copyWithout nil nilを指定すればrubyでいうcompactと同じ動きになる。 ある条件に合致する要素だけを残したコレクションを返す #(1 2 3 4 5 6 7 8 9 0) select [ i | i odd] 4つの「ect」メソッドの1つ。逆に除く場合はreject を用いる。 除く コレクションの指定した要素を取り除く foo = #($a $b $a $c $a $d) asList. foo remove $a 破壊的メソッドで、実行後、コレクションをもう一度見てみると指定した値が除かれている。 また、remove の返り値は指定した値になる。 指定した要素が見つからない場合はエラーになるので、回避策としてremove ifAbsentもあり。 コレクション(List、OrderedCollection)の最初の要素を取り除く foo = #($a $b $c) asList. foo removeFirst 破壊的メソッドで、実行後、コレクションをもう一度見てみると最初の要素が除かれている。 また、removeFirstの返り値は指定した最初の要素の値になる。いはゆるキューを実現できる。 コレクションが空の場合はエラー。 コレクション(配列型)の最後の要素を取り除く foo = #($a $b $c) asList. foo removeLast 破壊的メソッドで、実行後、コレクションをもう一度見てみると最後の要素が除かれている。 また、removeLastの返り値は指定した最後の要素の値になる。いはゆるスタックを実現できる。 コレクションが空の場合はエラー。 コレクション(List、OrderedCollection)の指定した位置の要素を取り除く foo = #($a $b $c) asList. foo removeAtIndex 2. 破壊的メソッドで、実行後、コレクションをもう一度見てみると指定した位置の要素が除かれている。 また、removeAtIndex の返り値は指定した位置の要素の値になる。 コレクションのサイズより大きい位置を指定した場合はエラー。 コレクション(List、OrderedCollection)の要素を全て取り除く foo = #($a $b $c) asList. foo removeAll 破壊的メソッドで、実行後、コレクションをもう一度見てみると空になっている。 また、removeAllの返り値はコレクションの値そのものになる。 実際の動きは1項目ずつremove するので遅い。 コレクションのから指定したコレクションの要素と一致する要素を全て取り除く foo = #($a $b $c) asList. foo removeAll #($a $b) 破壊的メソッドで、実行後、コレクションをもう一度見てみるとコレクションと共通する要素が除かれている。 また、removeAllの返り値はコレクションの共通要素になる。1つでも見つからないとエラーになる。 実際の動きはレシーバと引数の直積になるので遅い。 コレクション(配列型)の指定した範囲の要素を取り除く foo = #($a $b $c) asList. foo removeFrom 1 to 2 破壊的メソッドで、実行後、コレクションをもう一度見てみると指定した範囲の要素が除かれている。 また、removeFrom to の返り値は指定した範囲のコレクションになる。 コレクション(List、OrderedCollection)から条件に合致する要素を全て取り除く foo = #(1 2 3 4 5 6 7 8 9 0) asList. foo removeAllSuchThat [ i | i odd] 破壊的メソッドで、実行するとコレクション自身を変更しつつ、条件を満たすものを返り値として抽出することができる。 Visualworks界の最強のキラーメソッドと確信している。実力は中村主水並みだと思う。 条件に合致する要素を全て取り除いたコレクションを返す #(1 2 3 4 5 6 7 8 9 0) reject [ i | i odd] 4つの「ect」メソッドの1つ。逆に残す場合はselect を用いる。 remove系のメソッドと異なり、破壊的ではない。 追加する コレクション(List、OrderedCollection)の最後に要素を1つ追加する (OrderedCollection new) add 1; add 2; add 3; yourself 任意の値のコレクションを作るところでも活躍。 コレクション(List、OrderedCollection)の最後に要素を追加する2 (OrderedCollection new) addLast 1; addLast 2; addLast 3; yourself add と使い方は同じ。 コレクション(List、OrderedCollection)の最初に要素を追加する (OrderedCollection new) addFirst 1; addFirst 2; addFirst 3; yourself add やaddFirst とは逆に、先頭に追加する。 コレクションの最後にコレクションを追加する #(1 2 3) asList addAll #(4 5 6);yourself コレクションの最後にコレクションを追加する。 コレクション(List、OrderedCollection)の最後にコレクションを追加する2 #(1 2 3) asList addAllLast #(4 5 6);yourself addAll と使い方は同じ。 コレクション(List、OrderedCollection)の最初にコレクションを追加する #(1 2 3) asList addAllFirst #(4 5 6);yourself コレクションの最初にコレクションを追加する。 コレクション(List、OrderedCollection)のafter で指定した要素の後に要素を追加する #($a $b $c) asList add $d after $a ;yourself コレクションを順番に見ていって挿入する位置を探すのでちょっと遅い。 コレクション(List、OrderedCollection)のafter で指定した要素の前に要素を追加する #($a $b $c) asList add $d before $a ;yourself コレクションを順番に見ていって挿入する位置を探すのでちょっと遅い。 コレクション(List、OrderedCollection)の指定した位置の前に要素を追加する #($a $b $c) asList add $d beforeIndex 2 ;yourself add after とadd before は対になっているのに、なぜかこれはbeforeしかない。 コレクションの最後に要素を1つ追加した状態のコピーを作る #($a $b $c) copyWith $d Arrayは要素を追加することが許されていないが、コピーを作る時についでに追加という感じならOK。 Bagに出現頻度付きで要素を1つ追加する foo = #(1 3 5 8 5 6 2 3 5 7 6 9 5 4) asBag. foo add 1 withOccurrences 9. foo 既に存在する要素であれば出現数が加算される。 ループする コレクションの各要素に対し順番に処理を行う #( Hello World ) do [ i | Transcript cr; show i] もっとも基本的なループ。その汎用性ゆえに至る所で使われるが、今一度、do を使った車輪の再開発をしていないか見直して欲しい。 ちなみにブロック内で使う引数は参照専用なので、do を使って自身の値を =で書き換えることはできない。 コレクション(配列型)のインデックスに対し順番に処理を行う foo = Array new 5. foo keysDo [ i | foo at i put i] コレクションのインデックスで何かしたいときに使う。自身の配列にアクセスすることも可能。 コレクション(配列型)の各要素・インデックスに対し同時指定で順番に処理を行う foo = Array new 5 withAll 2. foo keysAndValuesDo [ key val | foo at key put val * key] このメソッドが真価を発揮するのはDictionaryの場合かな。 コレクションの各要素に対し順番に処理を行いつつ合間にも処理を行う foo = . #( Zun Zun ZUN zun Doko ) do [ i | foo = foo, " , i, " ] separatedBy [foo = foo, , ] CSVを作るときに真価を発揮する。逆にそれ以外の使いどころがわからない。 同じサイズのコレクション(配列型)同士で各要素に対し順番に処理を行う dic = Dictionary new. brother = #( 長男 次男 三男 四男 五男 六男 ). name = #( おそ松 唐松 チョロ松 市松 十姉妹 椴松 ). brother with name do [ i j | dic at i asSymbol put j]. 2つのコレクションのサイズが異なるとエラーになるんダヨ~ン。 いい例が見つからなかったぜ、てやんでぃ、バーローちきしょう! 並べ替える 並べ替えはいずれもクイックソートで行われるので不安定なソートである。 コレクションをソート済コレクション(SortedCollection)にする #(7 9 4 5 2 0 1 3) asSortedCollection SortedCollectionが得られる。つまり、返り値はクラスが変わっている。 コレクションを条件指定でソート済コレクション(SortedCollection)にする (Array with (#a- 9) with (#b- 6) with (#c- 4) with (#d- 2)) asSortedCollection [ e1 e2 | e1 value e2 value] ソート条件はブロック内に2つの引数が必要。 コレクション(配列型)を破壊的にソートする #(7 9 4 5 2 0 1 3) beMutable sort #(7 9 4 5 2 0 1 3) beMutable sorted 破壊的メソッドで、実行後、コレクションをもう一度見てみると並べ替えられている。 sortとsortedの違いはいまいちわからない。 コレクション(配列型)を条件指定で破壊的にソートする (Array with (#a- 9) with (#b- 6) with (#c- 4) with (#d- 2)) sort [ e1 e2 | e1 value e2 value] (Array with (#a- 9) with (#b- 6) with (#c- 4) with (#d- 2)) sorted [ e1 e2 | e1 value e2 value] (Array with (#a- 9) with (#b- 6) with (#c- 4) with (#d- 2)) sortWith [ e1 e2 | e1 value e2 value] 破壊的メソッドで、実行後、コレクションをもう一度見てみると並べ替えられている。 sort とsorted の違いはいまいちわからない。 コレクション(配列型)の指定した位置同士を入れ替える #($a $b $c) beMutable swap 2 with 3 結合する コレクションの各要素をつなげる (Array with (#a - A ) with (#b - B )) fold [ i j | i value, , , j value] 変数を用意しないでつなげることができるので便利。要素が空だとエラー。 CSVを作るときには要素間だけにカンマを入れてくれるので非常に強力。 また要素が1つだけだと思うような結果にならないこともある。 上記の例は要素を1つにするとvalueが評価されない。 コレクションの各要素を重ねあわせる(集計関数っぽいことをやる) #(1 3 5 7 9) inject 0 into [ i j | i + j] 変数を用意しないでつなげることができるので便利。 上記の例は合計を計算する。 最大値、最小値であれば [ i j | i min 9] とか [ i j | i max j] とかやればよい。 文字列結合は [ i j | i, j] でできる。 ただしfoldと違ってCSVを作ろうとするとカンマが余る。 区切る コレクション(配列型)を指定したトークンで区切る Morning,Afternoon,Evening tokensBasedOn $, コレクション共通メソッドだが、CSVを区切るために用意したとしか思えない。 コレクション(配列型)を条件にマッチする要素で区切る Morning,Afternoon/Evening;Night runsFailing [ i | #($, $/ $;) includes i] コレクション共通メソッドだが、文字列以外での使いどころがわからない。 コレクション(配列型)を条件にマッチする要素で区切りつつループもする Morning,Afternoon/Evening;Night runsFailing [ i | #($, $/ $;) includes i] do [ i | Transcript cr; show i] コレクション共通メソッドだが、文字列以外での使いどころがわからない。 コレクション(配列型)を条件にマッチしない要素で区切る 123,456,789.321 runsSatisfying [ i | i isDigit] runsFailing の逆条件バージョン。マッチする要素が続く場合、まとめて一区切りとする。 コレクション(配列型)を条件にマッチしない要素で区切りつつループもする 123,456,789.321 runsSatisfying [ i | i isDigit] do [ i | Transcript cr; show i] runsFailing do の逆条件バージョン。マッチする要素が続く場合、まとめて一区切りとする。 コレクション(配列型)を要素の前後関係を判断して区切る getFieldKnownNotToBeAName piecesCutWhere [ i j | i isLowercase and [j isUppercase]] コレクション共通だが、やはり文字列向きといえる。これはキャメルケースを単語ごとにカットした場合。 コレクション(配列型)を要素の前後関係を判断して区切りつつループもする getFieldKnownNotToBeAName piecesCutWhere [ i j | i isLowercase and [j isUppercase]] do [ i | Transcript cr; show i] コレクション共通だが、やはり文字列向きといえる。これはキャメルケースを単語ごとにカットした場合。 do 付きのメソッドをいろいろ用意してあるが、その効果はいかほどのものか疑問に思う。 確かに1度コレクションのコピーを作ってからdo するよりは効率がいいのだが、使用する頻度を考えるとな。。。 まとめる コレクションをユニークな(重複のない)コレクションにする #(1 3 5 8 5 6 2 3 5 7 6 9 5 4) asSet Setクラスにするだけで重複がなくなる。順番は保障されない。 コレクションに重複数のデータも持たせる #(1 3 5 8 5 6 2 3 5 7 6 9 5 4) asBag Bagクラスにするだけで重複数も一緒に持つことができる。Bagも順番が保障されないタイプ。 重複数はoccurrencesOf で取得することができる。 コレクションをtrue側false側に二分する #(1 3 5 8 5 6 2 3 5 7 6 9 5 4) groupedBy [ i | i odd] tureとfalseをキーとするDictionaryが返る。 実はremoveAllSuchThat で破壊的に分けることができ、しかも変数も少なくできるので、それを知っていると出番がなくなる。 その他 コレクションのある要素の重複数を調べる #(1 3 5 8 5 6 2 3 5 7 6 9 5 4) occurrencesOf 5 コレクションを1回ループさせてカウントするので、何度も実行するならasBagしてからの方が効率がよい。 コレクション(配列型)の順番を反対にする #($a $b $c $d $e) reverse 逆にした状態を後々まで保持しておいていろいろ利用するなら使う価値があるかもしれない。 逆からループするなら下記の同時にdo するタイプを使ったほうが効率がいい。 コレクション(配列型)各要素に対し逆から順番に処理を行う #($a $b $c $d $e) reverse di [ i | Transcript cr; show i] メソッドはself size to 1 by -1 do []となっている。つまり、reverse して、コレクションのコピーを 返してから、さらにdo するよりはずっと効率がいい。 何でもする。舐めてあげるし。入れてあげる。(*´ω`)★ http //gffz.biz/ -- age (2011-11-23 09 41 07) 名前 コメント -
https://w.atwiki.jp/mixikaibutu/pages/15.html
コレクションを達成するとExpやGold、コレクションマーク等を入手することができます。 同じような条件の下位コレクションを達成すると、上位のコレクションの条件が表示されます。 また、条件が表示されないコレクションもあります。 ※装備品コレクターには特にないと思います。 BOSSクエスト系 サーガ系 その他 ここのコメントにはコレクション全体的なコメントのみお願いします。 コメント欄 名前 コメント ▲
https://w.atwiki.jp/pokemoncolle/pages/233.html
モンコレトレーナーコレクション サトシ ダンデ シロナ ダイゴ
https://w.atwiki.jp/ultraman_collection/pages/18.html
ウルトラマン光の巨人コレクション Vol.4 2011年2月28日発売予定 通常価格1個609円(税込) 全12種(+シークレット1種) 1BOX8個入り 01:ウルトラレオ 02:ウルトラマンキング 03:ティガダーク 04:ウルトラマンナイス 05:ウルトラマンネクサス(ジュネッスブルー) 06:ダークザギ 07:ウルトラマンゼノン 08:ダークロプスゼロ 09:カイザーベリアル 10:グレンファイヤー 11:ミラーナイト 12:ジャンボット シークレット:ファイヤーマン 配置情報(上段が奥、下段が手前) ? ? ? ? ? ? ? ? コメント欄 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/msmusou2/pages/17.html
コレクションミッション ミッション名 難易度 クリア条件 味方パイロット ミッション発生条件 ミッション選択条件&備考 戦場 敵パイロット 制限時間 収集可能MSパーツ ジオンの怪物 | すべての 敵 フィールドの制圧 ランダム味方1名 初期 モビルスーツ研究所の技術レベルが2以上 地上 90 00 ザク?ザクタンクハイザック 連邦の勇者たち | すべての 敵 フィールドの制圧 ランダム味方1名 初期 モビルスーツ研究所の技術レベルが2以上 宇宙 90 00 ボールジム アクシズからの使者 || コレクションミッション「ジオンの怪物」をクリア ターミナルイベント「ザビ家の亡霊」を見る 宇宙 90 00 ガザCガザD 量産型ガンダム? || 全てのフィールドの制圧 コレクションミッション「連邦の勇者たち」をクリア フレンドシップミッション「地球圏統一作戦2」をクリア 地上 90 00 ジムジム・コマンドジム? ザクとは違うのだよ! ザクとは! ||| ターミナルイベント「ジオンの最新鋭機」を見る 地上 ランバ・ラル 90 00 グフグフ飛行型 巨人の証明 || 宇宙 90 00 マラサイマラサイバーザム ジオンに栄光あれ! ||| 全フィールドの制圧 地上 90 00 ズゴックドムゲルググ 緑の守護者たち ||| ターミナルイベント「ロンド・ベル参加要請」を見る 宇宙 ハサウェイ・ノア 90 00 ネモジェガン ネオ・ジオンの旗の下に ||| コレクションミッション「ジオンに栄光あれ!」をクリア 宇宙 レズン 90 00 ギラ・ドーガレズン専用ギラ・ドーガ ジェット・ストリーム・アタック! ||| フレンドシップミッション「地球攻略作戦2」をクリア フリーミッション「兵士たちの戦場2」をクリア 地上 ガイア オルテガ マッシュ 90 00 ザク?グフドム 龍、飛翔す |||| グレミー・トトのストーリーミッションをクリア 地上 グレミー・トト プルツー ロザミア 90 00 量産型バウ(アクシズ機)量産型バウ(グレミー軍機)量産型キュベレイ エゥーゴの誇り |||| コレクションミッション「量産型ガンダム」をクリア 宇宙 クワトロ アポリー ロベルト 90 00 ジム?ネモリック・ディアス 公国の騎士 |||| マ・クベの撃墜 マ・クベのストーリーミッションをクリア マ・クベとの友好関係が「信頼」以上 地上 マ・クベ 90 00 ドムギャン ジュピトリスの天才 ||||| フレンドシップミッション「冷酷なるマキャベリスト」をクリア シロッコ・サラ・レコアとの関係が「好感」以上 宇宙 シロッコ サラ レコア 90 00 水中より来る者 ||||| シャア の撃墜 フレンドシップミッション「地球攻略作戦2」をクリア モビルスーツ研究所の技術レベルが4以上 地上 シャア 90 00 ズゴックシャア専用ズゴック 女たちの戦場 |||| カテジナ・サラ・レコアが使用可能後 カテジナ・サラ・レコアとの関係が「好感」以上 宇宙 カレジナ サラ レコア レズン 90 00 狩人 ||||| コレクションミッション「ネオ・ジオンの旗の下に」をクリア 宇宙 シャア ギュネイ クェス 90 00 サザビーヤクト・ドーガ(ギュネイ機)ヤクト・ドーガ(クェス機) 帰ってきたZガンダム ||||| アムロの撃墜 宇宙 アムロ ケーラ チェーン 90 00 リ・ガズィ シャア・コレクション ||||| フリーミッション「シャアの挑戦」クリア 宇宙 シャア ルナマリア ララァ 90 00 赤い三連星? |||| 宇宙 シャア ジョニー カイ ハヤト 90 00 ジェリド、魂の遍歴 ||||| ジェリドのストーリーミッションをクリア 地上 ジェリド 90 00 ヘビとクモ |||| 宇宙 ヤザン ダンケル ラムサス 90 00 究極の兄弟 |||| フレンドシップミッション「地球帰還作戦2」クリア 宇宙 ロラン ギンガナム 90 00 ザク愛好家の集い1 ||| シャア ルナマリア ジュドー キラ コレクションミッション「ジオンの怪物」をクリア ザク?の撃墜数が1000以上ザク?限定 城砦都市群 ランバ・ラル 90 00 ザク愛好家の集い2 ||||| シャア ルナマリア ジュドー キラ コレクションミッション「ザク愛好家の集い1」をクリアザク?の撃墜数が3000以上 ザク?限定 宇宙 アムロ カミーユ 90 00 キュベレイの嵐 ||||| いずれかのキュベレイシリーズの撃破数3000以上 ハマーンとの友好関係「信頼」以上プルとの友好関係が「親密」以上プルツーとの友好関係が「親密」以上クリア後、量産型キュベレイのランク4解禁 コア3宙域 ハマーン プル プルツー セシリー フォウ 90 00 赤は一人でいい1 |||| ジョニー コレクションミッション「赤い三連星?」クリア ジョニーの指定した赤いMS限定シャア専用ザク、キュベレイmk2(プルツー)、サザビー、インフィニットジャスティス、武者ガンダム 宇宙 シャア カイ アポリー ロベルト 90 00 赤は一人でいい2 ||||| ジョニー コレクションミッション「赤は一人でいい1」クリア ジョニーの指定した赤いMS限定シャア専用ゲルググ、サザビー、武者ガンダム、ガンキャノン、リックディアス 地上 アスラン プルツー ルナマリア シャア 90 00
https://w.atwiki.jp/blacklagoonhs/pages/31.html
コレクション コレクション 日本刀や銃などのコレクションを「テープ」を使用しながら修復レベルを上げて解放していくコンテンツ。 各コレクション毎に修復途中のレベル達成や完全修復で様々な報酬を得られる また解放するこによって微量だが「攻撃・防御・生命」の各ステータスが上昇する 現在のステータス上昇量及び完全修復解放ボーナスは「コレクション」右上の「ステータス加算」から確認可能 テープは主にデイリーの「メイン任務」、「商会任務」で取得可能 コレクションは上から順に修復するしかなく、任意のコレクションを選択して修復することはできない ダイヤでテープを代替することも可能だが、よほど修復報酬を急いでゲットしたい場合以外、オススメしない 政宗 解放オススメ度(ダイヤ消費):★★☆ 最初のコレクションで完全修復報酬で「訓練ポイント」を10取得可能 始めたてでスキル/隠れ家で「幸運」をゲットしていない場合、幸運取得を早められる 妖刀村正 解放オススメ度(ダイヤ消費):★☆☆ 完全修復報酬で「物資調達」無料試行回数が1回追加される 「物資調達」で得られる強化リソースは微量だが、長い目でみると価値は大きい とはいえ、いずれ習得できるのでコレクション解放イベント時にダイヤ消費を検討する程度 村雨 解放オススメ度(ダイヤ消費):☆☆☆ 途中の報酬で「張」と完全修復報酬で「訓練ポイント」を20取得可能 村雨到達時点ではある程度欲しいスキルも習得できているなら、解放を急ぐ必要はない 大典太 解放オススメ度(ダイヤ消費):★★☆ 修復途中で「レビィ」、完全修復報酬で勢力争いで全て同時占領が可能となる 無課金の場合は、確実にレビィをゲットできるポイントの一つ また、勢力争いを「商業区(ダイヤ)」、「居住区(人物データ)」、「工業区(装備部品)」全てを同時占拠できる点は地味に美味しい 菊一文字 解放オススメ度(ダイヤ消費):☆☆☆ 「銀次」と完全修復報酬で弱肉のデイリー試行回数を増やせる 弱肉のデイリーは貴重な「装備部品」が取得可能だが+1回では微量な為、解放を急ぐ必要はない 長曽祢虎徹 解放オススメ度(ダイヤ消費):☆☆☆ 完全修復上限の「パーツバッグ容量上限」は地味にうれしいものの、 ダイヤの消費価値はない 和泉守兼定 解放オススメ度(ダイヤ消費):☆☆☆ レビィと生命吸収を+5%を取得できる 生命吸収を特化して回復を代用しているような特殊なケースでもなければ急ぐ必要はない 肥前国忠吉 解放オススメ度(ダイヤ消費):★☆☆ 仲間全員の「ダメージ+6%」を取得でき、地味に火力への影響が多いため、 火力が急いで足したい場合はダイヤ消費もあり 長船 解放オススメ度(ダイヤ消費):☆☆☆ 完全修復ボーナスの「パーツバッグ容量上限+100」は地味にうれしいものの、 ダイヤの消費価値はない 童子切安綱 解放オススメ度(ダイヤ消費):☆☆☆ ダメージ軽減6%はPVPでは多少価値がある程度、ダイヤ消費はいわずもがな UZI 解放オススメ度(ダイヤ消費):☆☆☆ なぜかここから銃に切り替わる、「パーツバッグ容量上限+100」なのでお察し レミントン 解放オススメ度(ダイヤ消費):☆☆☆ 完全修復ボーナスの「命中+6%」は、回避もそうだが意味のあるステータスなのかを疑うレベル VSR-10 解放オススメ度(ダイヤ消費):☆☆☆ 「回避+5%」なので同上だが、このコレクションを多くのプレイヤーが到達した場合、 命中・回避の仕様変更でも計画されているのだろうか。 M-16 解放オススメ度(ダイヤ消費):☆☆☆ 2024/1月時点ではコレクションの最後に当たる武器。 完全修復報酬は「生命値+6%」
https://w.atwiki.jp/ultraman_collection/pages/15.html
ウルトラマン光の巨人コレクション Vol.3 2010年9月20日発売 通常価格1個609円(税込) 全12種(+シークレット1種) 1BOX8個入り 「その目に灯る、正義の光」 01:ウルトラマン(Bタイプ) 02:ウルトラの父 03:アストラ 04:アンドロフロル 05:ウルトラマンスコット 06:ウルトラマンダイナ(フラッシュタイプ) 07:ウルトラマンネオス 08:ウルトラマンコスモス(コロナモード) 09:ウルトラマンジャスティス 10:ウルトラマンレジェンド 11:ウルトラマンゼロ 12:ウルトラマンベリアル シークレット:レッドマン 配置情報(上段が奥、下段が手前) A マンBタイプ アストラ スコット ネオス 父 アンドロフロル ダイナ コスモス B スコット ネオス ジャスティス ゼロ ダイナ コスモス レジェンド ベリアル C マンBタイプ スコット ネオス ジャスティス アストラ ダイナ コスモス レジェンド D ダイナ ネオス コスモス ジャスティス レジェンド ベリアル ゼロ レッドマン コメント欄 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/katou1298/pages/14.html
この部屋はwi-fiコネクションでうまく合流できるように作りました なお友達募集はリンク先のページでお願いします どうぶつの森友達募集はこちらから マリオカートWii友達募集はこちらから 合流するために5つの部屋を用意しました 自由に使ってください 入るときはルームのリンクの下のコメント欄に入っていることを書くと相手が見つけやすいです ルーム1 ↓ルーム1の合流専用コメント欄 遊びたいです! -- ななみ (2012-08-21 17 25 36) あそばない? ナ ぺぺ ム まめゴマ コ 1893‐8941‐0839 -- ぺぺ (2012-10-05 17 39 11) ななみ、遊ばない? いないのー? -- ぺぺ (2012-10-05 17 44 39) こうきさん登録お願いします2923 -- としもり (2012-10-31 21 08 11) こうきさん登録お願いします -- としもり (2012-10-31 21 20 30) こうきさん登録お願いします292360773467 -- としもり (2012-10-31 21 27 35) MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM -- MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM (2012-11-08 13 36 08) MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM -- MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM (2012-11-08 13 37 11) こうきさん一緒にやりませんか?友達コードは2065-5993-8320です -- カービィ (2012-11-11 11 10 56) 誰か~通信しませんか? -- シンタロー (2012-11-22 18 17 58) 誰か通信して~ 友達コードは、4599-7820-0056だよ~ ヨロシク( ゚ー゚)/゚*゙ ¨*;.・ ;゙ ..・☆ -- シンタロー (2012-11-22 18 19 20) したにとうそうちゅうやるってかいたからみてコードをかいてください。(ミッション)あります。カービイーさんさんかどうぞくわしくわしたにかいてる。ほかのひとも。 -- りゅうき (2012-11-23 20 33 31) コードは -- ひかる (2012-11-28 21 19 04) した↓えんちょうするとうそうちゅう -- りゅうき (2012-12-02 10 47 56) 誰か通信しませんか? -- いちか (2012-12-08 17 56 20) 村にいかせてください^^ -- いちか (2012-12-08 17 58 10) コード教えてあととうろくした? -- りゅうき (2012-12-09 10 26 50) だれでもいいからきて5158-1455-4130どうぶつの森です -- たくま (2012-12-14 12 03 24) 。 -- dっぐy (2012-12-14 17 15 34) 遊びにいきたいー -- ゆう (2013-01-06 21 27 19) あそび村 名前 ゆう 4642-7929-5835 -- ゆう (2013-01-06 21 28 46) 返事ください 待ってます。 -- ゆう (2013-01-06 21 30 17) だれか来てください!!友達コードは3096-1092-1237です! -- さつき♪ (2013-02-23 18 56 35) コードは4557−0070−9172です今から開けるよー -- ハバネロ (2013-03-23 14 54 52) 4時までにきて -- ハバネロ (2013-03-23 15 05 17) ふれになって~ (494357151177) -- イリオ (2013-04-06 18 28 06) 小3です 4814-5610-3454 -- しょぼん (2013-04-13 18 39 48) 266725753161です イトマン村です -- しんたろう (2013-04-28 11 13 12) さつきさん遊びませんか 友達コードは、0992・0058・4567です -- aaa (2013-06-29 15 08 54) 門あけてます -- aaa (2013-06-29 15 12 19) 064700196642 -- kouki (2013-08-31 10 16 38) 小6の1搬人 -- れいじ (2013-09-21 19 07 23) 0691-2894-9491 -- れいじ (2013-09-21 19 08 58) ななみさん通信しませんか。 -- ジェイ (2013-11-15 17 16 03) 4642-6613-3484 スレイヤー村です -- MANAYA (2014-03-22 17 34 01) 皆、ボカロキャラのGUMIの「セフレ」はいい曲だよ!聞いてみてね!http //www.youtube.com/watch?v=7Q3SJBX0EB4 -- みのり (2014-05-10 18 43 16) 名前 コメント ルーム2 ↓ルーム2の合流専用コメント欄 まってまーす あそぼ -- ぺぺ (2012-10-05 17 45 03) ナ ぺぺ ム まめゴマ コ 1893-8941-0839 -- ぺぺ (2012-10-05 17 46 33) こんしゅうのにちようびとうそうちゅうよーにげたら30まんベルハンターはやりたいひとです。30ぷんかんにげる9 30ぷんもんあけ。9 30ぷんから~10 00までざっそうぬきおれいにひとりひとつなにかあげます。うけつけきょう~からにちようびハンターは、かぼちゃのかぶりものをかぶってやる。かぼちゃのかぶりものはむらにきてからわたす。ばしょししょーむらコード(3783-6337-6963)名前りゅうきいいものは、こうはいはな、。どうぞさんか。 -- りゅうき (2012-11-23 20 29 39) こおどは3354-2974-9725 -- ゆいな (2013-01-02 09 10 14) 今やおー -- まるぼう (2013-01-27 11 13 34) コードは4557−0070−9172です -- ハバネロ (2013-03-23 14 44 37) 村名騁カブもりもりむら -- ハバネロ (2013-03-23 14 47 41) ちなみに今から開けるよー -- ハバネロ (2013-03-23 14 52 54) 3月の23日の4じまでに来て下さい -- ハバネロ (2013-03-23 15 03 33) 皆、ボカロキャラのGUMIの「セフレ」はいい曲だよ!聞いてみてね!http //www.youtube.com/watch?v=7Q3SJBX0EB4 -- みのり (2014-05-10 18 42 52) 名前 コメント ルーム3以降はできたらリンクを貼ります
https://w.atwiki.jp/kazu392h/pages/938.html
autolinkTOP>【こ】>コレクション コレクション (これくしょん) 分類2【物】 ジャンル1【一般】 大抵は自分以外の興味の無い人から見て、ゴミとしか映らない物の数々。 しかし自己満足の世界では、命の次に大切な宝物なのさ。 人間関係を壊さない様にと考えるなら、嘘でも相手のそれに対して多少の興味を持ち決してけなしてはいけない。 なお、人間関係をシャットアウトされそうなものとか、スケベなのや子供じみたものをこれとしている場合”秘密のコレクション”と言い方が変化する。 登録日 2004/01/13 【こ】一覧 恋【こい】 恋はスリル、ショック、サスペンス 高級店 轟轟戦隊ボウケンジャー 甲子園カレー 甲子園焼きそば 鋼鉄ジーグ コードネーム=麻宮サキ GW ゴールド会員証 ゴールドライタン ここは惑星0番地 心はロンリー、気持ちは・・・ 小嶋元太 五代雄介 こだま・ひびき ご馳走様でした こちら本池上署 ゴックン GOD SPEED LOVE こてこて 今年の阪神は違う 今年も勝ちたいんや! 粉モン文化 コナンとキッドとクリスタル・マザー コナンと平次と消えた少年 5年3組魔法組 小林聡美 コピーロボット 虎風荘 コメント 小文字 小山正明 コレクション GORO コロ助 コロムビアゆりかご会 コロンボ ゴワッパー5ゴーダム コンドーム コンバトラーV COMPLEX 紺碧の棺 ■ トップページへ移動 ▲ このページ上段に移動